Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

nexus: 3.52.0-01 -> 3.62.0-01 #271120

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from
Draft

nexus: 3.52.0-01 -> 3.62.0-01 #271120

wants to merge 1 commit into from

Conversation

s1341
Copy link
Contributor

@s1341 s1341 commented Nov 30, 2023

Update nexus. On the way, move from binary based derivation to a source-building derivation. This should allow for more flexibility in the future, including allowing plugins to be built.

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

Priorities

Add a 馃憤 reaction to pull requests you find important.

Update nexus. On the way, move from binary based derivation to a
source-building derivation. This should allow for more flexibility in
the future, including allowing plugins to be built.
@zaninime
Copy link
Contributor

zaninime commented Dec 2, 2023

Nice! Great job in moving this to building from source. Looking at the change, how is the yarn lock v1 generated? Are you considering automating this process through an update script so that we get "free" updates for that too?

@s1341
Copy link
Contributor Author

s1341 commented Dec 3, 2023

There is a comment decribing how to generate the yarn.lock. I don't think it's worth automating as it is literaly a single operation.

@zaninime
Copy link
Contributor

zaninime commented Dec 4, 2023

I don't think it's a blocker for this PR, but the reasoning to avoid automating it is IMHO poor. Also updating a binary package is only "one operation" (clone nixpkgs, zero out the hash, update the version, run the build, copy-paste the updated hash), but when there are 80k packages to regularly update, having it automated makes sense, especially as there's a bot that does it. Nexus shouldn't be an exception.

To update the yarn.lock, it looks like to me that:

  1. git, node and yarn must be at a minimum present
  2. the correct version of the nexus source to be cloned in a folder
  3. cd in that folder
  4. run yarn / yarn install there
  5. copy the resulting yarn.lock in the right dir in nixpkgs

If you have a look at other update scripts, you see they take similar steps in doing custom update processes.

Also related to the yarn.lock: how do we ensure the generated one is equivalent / compatible with the official v2? Is there some form of automated test that can be run?

@s1341
Copy link
Contributor Author

s1341 commented Dec 5, 2023

Can you point me at an example update script so that I can crib?

@s1341
Copy link
Contributor Author

s1341 commented Dec 21, 2023

@zaninime ?

@zaninime
Copy link
Contributor

zaninime commented Jan 5, 2024

@nixos-discourse
Copy link

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:

https://discourse.nixos.org/t/prs-ready-for-review/3032/3648

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants